/**

 @Name：layuiAdmin 内容系统
 @Author：star1029
 @Site：http://www.layui.com/admin/
 @License：LPPL
    
 */

                            
layui.define(['table', 'form','upload'], function(exports){
  var $ = layui.$
  ,admin = layui.admin
  ,view = layui.view
  ,table = layui.table
  ,upload = layui.upload
  ,form = layui.form;
  
  

  //商品管理
  table.render({
    elem: '#LAY-app-content-list'
    ,url: 'product/findAll.do' //模拟接口
    ,cols: [[
      {type: 'checkbox', fixed: 'left'}
      ,{field: 'id',  title: '商品编号'}
      ,{field: 'pname', title: '商品名称'}
      ,{field: 'unitPrice', title: '单价'}
      ,{field: '', title: '图片',width:150,templet:function(d){
    	  return '<img  lay-event="upload" src="/file4/'+d.url+'" />';
      }}
      ,{field: 'details', title: '详情'}
      ,{field: 'stock', title: '库存'}
      ,{field: '', title: '是否上架',templet:function(d){
    	  if(d.isPutOnSale=="是")
    		  return '<input type="checkbox" param="'+d.id+'" lay-filter="putOn" name="isPutOnSale" checked lay-skin="switch" lay-text="是|否">';
    	  else
    		  return '<input type="checkbox" param="'+d.id+'" lay-filter="putOn" name="isPutOnSale"  lay-skin="switch" lay-text="是|否">';
      }}
      ,{field: '', title: '分类',templet:function(d){
    	  return d.category.name
      }}
      ,{field: '', title: '今日必抢',templet:function(d){
    	  if(d.isToday=="是")
    		  return '<input type="checkbox" param="'+d.id+'" lay-filter="today" name="isToday" checked lay-skin="switch" lay-text="是|否">';
    	  else
    		  return '<input type="checkbox" param="'+d.id+'" lay-filter="today" name="isToday"  lay-skin="switch" lay-text="是|否">';
      }}
      ,{title: '操作', minWidth: 150, align: 'center', fixed: 'right', toolbar: '#table-content-list'}
    ]]
    ,page: true
    ,limit: 10
    ,limits: [10, 15, 20, 25, 30]
  });
  
 
  
  //监听是否上架开关切换
  form.on('switch(putOn)', function(data){
	  //console.log(data.elem); //得到checkbox原始DOM对象
	 // console.log(data.elem.checked); //开关是否开启，true或者false
	 // console.log(data.value); //开关value值，也可以通过data.elem.value得到
	 // console.log(data.othis); //得到美化后的DOM对象
	  $.post(
		  "product/putOn.do",
		  {
			  id:$(data.elem).attr("param"),
			  isPutOnSale:data.elem.checked?"是":"否"
		  },function(res){
			  if(res==1){
				  layer.msg("操作成功！");
			  }else{
				  layer.msg("操作失败！");
			  }
		  }
	  );
	});  
  
  //监听今日必抢开关切换
  form.on('switch(today)', function(data){
	//  console.log(data.elem); //得到checkbox原始DOM对象
	 // console.log(data.elem.checked); //开关是否开启，true或者false
	//  console.log(data.value); //开关value值，也可以通过data.elem.value得到
	//  console.log(data.othis); //得到美化后的DOM对象
	  
	  $.post(
		  "product/recommend.do",
		  {
			  id:$(data.elem).attr("param"),
			  isToday:data.elem.checked?"是":"否"
		  },function(res){
			  if(res==1){
				  layer.msg("操作成功！");
			  }else{
				  layer.msg("操作失败！");
			  }
		  }
	  );
	});  
  
  //监听工具条
  table.on('tool(LAY-app-content-list)', function(obj){
    var data = obj.data;
    if(obj.event === 'del'){
      layer.confirm('确定删除此商品？', function(index){
        obj.del();
        layer.close(index);
      });
    }else if(obj.event === 'upload'){
        admin.popup({
            title: '上传图片'
            ,area: ['550px', '550px']
            ,id: 'LAY-popup-content-edit'
            ,success: function(layero, index){
              view(this.id).render('app/content/upload', data).done(function(){
            	  var path;//存储上传文件路径
            	 //设置预览图
               	$("#upload").attr("src","/file4/"+data.url);
                var uploadInst = upload.render({
                    elem: '#test1' //绑定元素
                    ,url: 'product/upload.do' //上传接口
                    ,done: function(res){
                      //上传完毕回调
                    	path = res.data;
                    	$("#upload").attr("src","/file4/"+path);
                    }
                    ,error: function(){
                      //请求异常回调
                    }
                  });
               	
                form.render(null, 'layuiadmin-app-form-list');
                //监听提交
                form.on('submit(layuiadmin-app-form-submit)', function(d){

                  //提交 Ajax 成功后，关闭当前弹层并重载表格
                  //$.ajax({});
                  $.post(
                	"product/updateUrl.do",
                	{
                		id:data.id,
                		url:path
                	},function(res){
                		if(res==1){
                			layui.table.reload('LAY-app-content-list'); //重载表格
                            layer.close(index); //执行关闭 
                		}
                	}
                  );
                  
                });
              });
            }
          });
        } else if(obj.event === 'edit'){
      admin.popup({
        title: '编辑商品'
        ,area: ['550px', '550px']
        ,id: 'LAY-popup-content-edit'
        ,success: function(layero, index){
          view(this.id).render('app/content/listform', data).done(function(){
           
            //加载下拉框
           	$.post(
       	    	"category/findAll.do",
       	    	function(res){
       	    		//console.log(res);
       	    		$(res).each(function(){//each表示每个元素
       	    			//创建一个下拉选项
       	    			var option = $("<option value='"+this.id+"'>"+this.name+"</option>");
       	    			//追加到下拉框组件中
       	    			$("#categoryId").append(option);
       	    		});
       	    		form.render('select'); //刷新select选择框渲染
       	    		console.log(data);
       	    		//数据回显
       	    		form.val("layuiadmin-app-form-list",data);
       	    	},'json'
       	    );
           	
            form.render(null, 'layuiadmin-app-form-list');
            //监听提交
            form.on('submit(layuiadmin-app-form-submit)', function(data){
              var field = data.field; //获取提交的字段

              //提交 Ajax 成功后，关闭当前弹层并重载表格
              //$.ajax({});
              $.post(
                  	"product/addOrEdit.do",
                  	field,
                  	function(res){
                  		if(res==0){
                  			layer.msg("添加失败");
                  		}
                  	},'json'
                  );
              layui.table.reload('LAY-app-content-list'); //重载表格
              layer.close(index); //执行关闭 
            });
          });
        }
      });
    }
  });

  //分类管理
  table.render({
    elem: '#LAY-app-content-tags'
    ,url: './json/content/tags.js' //模拟接口
    ,cols: [[
      {type: 'numbers', fixed: 'left'}
      ,{field: 'id', width: 100, title: 'ID', sort: true}
      ,{field: 'tags', title: '分类名', minWidth: 100}
      ,{title: '操作', width: 150, align: 'center', fixed: 'right', toolbar: '#layuiadmin-app-cont-tagsbar'}
    ]]
    ,text: '对不起，加载出现异常！'
  });
  
  //监听工具条
  table.on('tool(LAY-app-content-tags)', function(obj){
    var data = obj.data;
    if(obj.event === 'del'){
      layer.confirm('确定删除此分类？', function(index){
        obj.del();
        layer.close(index);
      });
    } else if(obj.event === 'edit'){
      admin.popup({
        title: '编辑分类'
        ,area: ['450px', '200px']
        ,id: 'LAY-popup-content-tags'
        ,success: function(layero, index){
          view(this.id).render('app/content/tagsform', data).done(function(){
            form.render(null, 'layuiadmin-form-tags');
            
            //监听提交
            form.on('submit(layuiadmin-app-tags-submit)', function(data){
              var field = data.field; //获取提交的字段

              //提交 Ajax 成功后，关闭当前弹层并重载表格
              //$.ajax({});
              layui.table.reload('LAY-app-content-tags'); //重载表格
              layer.close(index); //执行关闭 
            });
          });
        }
      });
    }
  });

  //评论管理
  table.render({
    elem: '#LAY-app-content-comm'
    ,url: './json/content/comment.js' //模拟接口
    ,cols: [[
      {type: 'checkbox', fixed: 'left'}
      ,{field: 'id', width: 100, title: 'ID', sort: true}
      ,{field: 'reviewers', title: '评论者', minWidth: 100}
      ,{field: 'content', title: '评论内容', minWidth: 100}
      ,{field: 'commtime', title: '评论时间', minWidth: 100, sort: true}
      ,{title: '操作', width: 150, align: 'center', fixed: 'right', toolbar: '#table-content-com'}
    ]]
    ,page: true
    ,limit: 10
    ,limits: [10, 15, 20, 25, 30]
    ,text: '对不起，加载出现异常！'
  });
  
  //监听工具条
  table.on('tool(LAY-app-content-comm)', function(obj){
    var data = obj.data;
    if(obj.event === 'del'){
      layer.confirm('确定删除此条评论？', function(index){
        obj.del();
        layer.close(index);
      });
    } else if(obj.event === 'edit'){
      admin.popup({
        title: '编辑评论'
        ,area: ['450px', '300px']
        ,id: 'LAY-popup-content-comm'
        ,success: function(layero, index){
          view(this.id).render('app/content/contform', data).done(function(){
            form.render(null, 'layuiadmin-form-comment');
            
            //监听提交
            form.on('submit(layuiadmin-app-com-submit)', function(data){
              var field = data.field; //获取提交的字段

              //提交 Ajax 成功后，关闭当前弹层并重载表格
              //$.ajax({});
              layui.table.reload('LAY-app-content-comm'); //重载表格
              layer.close(index); //执行关闭 
            });
          });
        }
      });
    }
  });

  exports('contlist', {})
});